﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace HA.ModFlow.Domain.DomainLayer
{
    [Serializable]
   public class HFBItem:ICloneable
    {
        public HFBItem(int row1,int col1,int layer,int row2,int col2,double hydchr)
        {
            this._IROW1 = row1;
            this._ICOL1 = col1;
            this._Layer = layer;
            this._IROW2 = row2;
            this._ICOL2 = col2;
            this._Hydchr = hydchr;
        }

        int _IROW1;

        public int IROW1
        {
            get { return _IROW1; }
            set { _IROW1 = value; }
        }
        int _ICOL1;

        public int ICOL1
        {
            get { return _ICOL1; }
            set { _ICOL1 = value; }
        }

        int _IROW2;

        public int IROW2
        {
            get { return _IROW2; }
            set { _IROW2 = value; }
        }
        int _ICOL2;

        public int ICOL2
        {
            get { return _ICOL2; }
            set { _ICOL2 = value; }
        }



        int _Layer;

        public int Layer
        {
            get { return _Layer; }
            set { _Layer = value; }
        }



        double _Factor = 1.0;

        public double Factor
        {
            get { return _Factor; }
            set { _Factor = value; }
        }

        double _Hydchr;

        public double Hydchr
        {
            get { return _Hydchr; }
            set { _Hydchr = value; }
        }

        public object Clone()
        {
            return this.MemberwiseClone();
        }

        /// <summary>
        /// 返回障碍物单元ZYXYX位置信息 索引从1开始 保加
        /// </summary>
        /// <returns></returns>
        public int[] ToZYXYX()
        {
            return new int[5] { this._Layer, this._IROW1, this._ICOL1, this._IROW2, this._ICOL2 };
        }
    }
}
